#include "stdafx.h"
#include <string>
#include "base/thread/MessageLoopForUI.h"

namespace xBase
{

    CxMessageLoopForUI::CxMessageLoopForUI()
        : CxMessageLoop(LOOP_TYPE_UI, "LOOP_TYPE_UI")
    {
    }

    CxMessageLoopForUI::CxMessageLoopForUI(const std::string & strThreadName)
        : CxMessageLoop(LOOP_TYPE_UI, strThreadName)
    {
    }

    VOID CxMessageLoopForUI::PumpOutPendingPaintMessages()
    {
        PumpUI()->PumpOutPendingPaintMessages();
    }

    VOID CxMessageLoopForUI::Run(IxDispatcher* pDispatcher)
    {
        CxAutoRunState SaveState(this);
        m_pState->m_pDispatcher = pDispatcher;

        RunHandler();
    }
}